package com.chen.authority.common.response;

import cn.hutool.http.HttpStatus;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.chen.authority.common.constant.SysConstant;

/**
 * 分页响应
 *
 * @author chengy
 * @date 2022/9/27
 */
public class PageResponse<T> extends Response {

    /**
     * 分页数据
     */
    private Page<T> data;

    public Page<T> getData() {
        return data;
    }

    public void setData(Page<T> data) {
        this.data = data;
    }

    /**
     * 成功响应
     *
     * @param data 数据
     * @param <T>  数据类型
     * @return 分页响应
     */
    public static <T> PageResponse<T> success(Page<T> data) {
        PageResponse<T> pageResponse = new PageResponse<>();
        pageResponse.setCode(HttpStatus.HTTP_OK);
        pageResponse.setMessage(SysConstant.SUCCESS_MSG);
        pageResponse.setData(data);
        return pageResponse;
    }

}
